local que_shezui = fk.CreateSkill {
    name = "que_shezui",
    anim_type = "offensive",
    tags = { Skill.Limited }
}
Fk:loadTranslationTable {
    ["que_shezui"] = "赦罪",
    [":que_shezui"] = "限定技，出牌阶段，你可以令一名死亡的其他角色复活，令其将手牌摸至体力上限，调整体力至一点，若如此做，你弃置所有非手牌区的牌。",
}
que_shezui:addEffect('active', {
    card_num = 0,
    target_num = 0,
    prompt = "你可以复活一个尸体，但是你要弃装备区和判定区牌",
    can_use = function(self, player)
        return player:usedSkillTimes(self.name, Player.HistoryGame) == 0 and
            table.find(Fk:currentRoom().players, function(p)
                return p.dead
            end)
    end,
    card_filter = Util.FalseFunc,
    on_use = function(self, room, effect)
        local tos = table.map(table.filter(room.players, function(p) return p.dead end),
            function(p) return "seat#" .. tostring(p.seat) end)
        if #tos > 0 then
            local targets = room:askToChoice(effect.from,
                { choices = tos, skill_name = que_shezui.name, prompt = "赦罪：请选择要复活的玩家" })
            if targets then
                local to = tonumber(string.sub(targets, 6))
                for _, p in ipairs(room.players) do
                    if p.seat == to then
                        room:revivePlayer(p, true)
                        p:drawCards(p.maxHp - p:getHandcardNum(), que_shezui.name)
                        room:changeHp(p, -(p.hp - 1), nil, que_shezui.name)
                        effect.from:throwAllCards("ej")
                        break
                    end
                end
            end
        end
    end,
})
return que_shezui
